home *** CD-ROM | disk | FTP | other *** search
-
-
- RELEASE NOTES FOR LINUX v0.95
- Linus Torvalds, March 7, 1992
- REV A March 14, 1992 by tgm
-
- This is file mostly contains info on changed features of Linux, and
- using old versions as a help-reference might be a good idea.
-
-
- COPYRIGHT
-
- Linux-0.95 is NOT public domain software, but is copyrighted by me. The
- copyright conditions are the same as those imposed by the GNU copyleft:
- get a copy of the GNU copyleft at any major ftp-site (if it carries
- linux, it probably carries a lot of GNU software anyway, and they all
- contain the copyright).
-
- The copyleft is pretty detailed, but it mostly just means that you may
- freely copy linux for your own use, and redistribute all/parts of it, as
- long as you make source available (not necessarily in the same
- distribution, but you make it clear how people can get it for nothing
- more than copying costs). Any changes you make that you distribute will
- also automatically fall under the GNU copyleft.
-
- NOTE! The linux unistd library-functions (the low-level interface to
- linux: system calls etc) are exempt from the copyright - you may use
- them as you wish, and using those in your binary files won't mean that
- your files are automatically under the GNU copyleft. This concerns
- /only/ the unistd-library and those (few) other library functions I have
- written: most of the rest of the library has it's own copyrights (or is
- public domain). See the library sources for details of those.
-
-
- INSTALLATION
-
- This is a SHORT install-note. The installation is very similar to 0.11
- and 0.12, so you should read RELNOTES.11 too. There are a couple of
- programs you will need to install linux: something that writes disk
- images (rawrite.exe or NU or...) and something that can create harddisk
- partitions (fdisk under xenix or older versions of dos, edpart.exe or
- something like that).
-
- NOTE! Repartitioning your harddisk will destroy all data on it (well,
- not exactly, but if you know enough to get back the data you probably
- didn't need this warning). So be careful.
-
- READ THIS THROUGH, THEN READ RELNOTES.11, AND IF YOU ARE SURE YOU KNOW
- WHAT YOU ARE DOING, CONTINUE. OTHERWISE, PANIC. OR WRITE ME FOR
- EXPLANATIONS. OR DO ANYTHING BUT INSTALL LINUX - IT'S VERY SIMPLE, BUT
- IF YOU DON'T KNOW WHAT YOU ARE DOING YOU'LL PROBABLY BE SORRY. I'D
- RATHER ANSWER A FEW UNNECESSARY MAILS THAN GET MAIL SAYING "YOU KILLED
- MY HARDDISK, BASTARD. I'M GOING TO FIND YOU, AND YOU'LL BE SORRY WHEN I
- DO".
-
- Minimum files needed:
-
- RELNOTES.95 (this file)
- RELNOTES.12
- RELNOTES.11 (plus any other docs you might find: the FAQ etc)
- boot.img (version 0.95)
- root.img (version 0.95)
- auxtool.img (for tar, compress, uncompress, vi)
- rawrite.exe
- some disk partitioning software, eg fdisk, edpart.exe etc.
-
- Optionally:
- root.img (version 0.12, for files you might wish to copy)
- other binaries, GCC, PERL, linbin, etc.
-
- 1) back up everything you have on your harddisk - linux-0.95 is still in
- beta and might do weird things. The only thing I guarantee is that
- it has worked fine on /my/ machine - for all I know it might eat your
- harddisk and spit it out in small pieces on any other hardware.
-
- Linux-0.95 can easily be booted by getting the 2 files `boot.img'
- and `root.img' from the linux zip archive and writing them out to disks
- of the SAME size (i.e two 1.44M floppies or two 1.2M floppies).
- Writing the disks is done with the "rawrite.exe" program
- from dos. Linux is then booted simply by inserting the boot diskette in
- drive A, and rebooting the machine. If everything goes well, linux will
- ask you to insert the root-disk after loading the system. Hopefully
- linux will then correctly load the shell executable, and allow you to
- login as root (no password). After logging in the system prompt `#'
- should be displayed.
-
- You can get a complete list of available commands by pressing <tab>
- twice: the root-disk contains mostly setup-programs needed to install
- the system on a harddisk. You can test them a bit, reading directories
- etc.
-
- PROBLEMS: should you be unable to boot Linux, you may have to reconfigure
- your computer's CMOS setup. You must disable EMS memory, telling CMOS
- to use all your RAM as extended memory. Linux may not be compatible with
- shadow ram either, so you may want to disable it also. If Linux's
- fdisk command doesn't show any hard disk partitions you may have to
- check you CMOS setup to be sure that a hard drive type is selected.
- Remember Linux requires an AT type hard disk controller and a 386 or
- better CPU.
-
- 2) Test out the linux boot-disk with the root file system. If it
- doesn't work, check the hardware requirements, and mail me if you
- still think it should work. I might not be able to help you, but
- your bug-report would still be appreciated.
-
- Linux-0.95 now has an init/login: there should be 4 logins started on
- the first 4 virtual consoles. Log in as root (no password), and test
- it out. Change to the other logins by pressing left-alt + FN[1-4].
- Note that booting up with a floppy as root is S..L..O..W.. - the
- floppy driver has been optimized for sequential access (backups etc),
- and trashes somewhat with demand-loading.
-
- Test that linux can read your harddisk at least partly: run the fdisk
- program on the root-disk, and see if it barfs. If it tells you about
- any partitions at all, linux can successfully read at least part of
- your harddisk.
-
- NOTE! Harddisk device names and numbers have changed between versions
- 0.12 and 0.95: the new numbering system was needed for the extended
- partitions, and a new naming scheme was in order so that people
- wouldn't confuse the old devices with the new ones.
-
- The new harddisk device names are: /dev/hd followed by an 'a' for the
- first drive, or a 'b' for the second one. After that comes the
- partition number, 1-4 for the primary partitions, 5- for possible
- extended partitions. No number means the complete disk. Like this:
-
- /dev/hda the whole first harddisk (old: /dev/hd0)
- /dev/hdb3 partition nr 3 on the second disk (old: /dev/hd8)
-
- 3) Make sure that you have a free /primary/ partition. There can be 4
- primary partitions per drive: newer DOS fdisks seem to be able to
- create only 2 (one primary and one extended). In that case use some
- other partitioning software: edpart.exe etc. Linux fdisk currently
- only tells you the partition info - it doesn't write to the disk.
-
- Remember to check how big your partitions are, as that can be used to
- tell which device Linux thinks it is. AFTER PARTITIONING ALWAYS USE
- LINUX'S OWN FDISK TO READ THE PARTITIONS SO THAT YOU WILL KNOW HOW
- LINUX LABELS THE PARTITIONS. Do not assume that Linux numbers always
- agree with numbers reported by other partitioning software. For example,
- what DOS's fdisk refers to as partition number 2 may be viewed by Linux
- as /dev/hd4. It all depends on your particular unique circumstances and
- is of no importance EXCEPT that when you tell Linux to make a file system
- on your disk OR patch the Linux boot image to tell it to use the hard
- drive as root. If you and Linux aren't both "on the same page" conceptually,
- you will unintentionally overwrite the wrong partition, or be unable to
- boot from the hard drive.
-
- NOTE! Linux-0.95 /might/ recognize extended partitions: but the code
- for this is utterly untested, as I don't have any of those. Do NOT
- use the extended partitions unless you can verify that they are
- indeed correctly set up - if my routines are wrong, writing to the
- extended partitions might just overwrite some other partition
- instead. Not nice.
-
- 4) Boot up linux again, fdisk to make sure you now have the new
- partition, and use mkfs to make a filesystem on one of the partitions
- which Linux's OWN fdisk reports.
-
-
- Write "mkfs -c /dev/hdX nnn" where X
- is the device number reported by linux fdisk, and nnn is the size - also
- reported by fdisk. nnn is the size in /blocks/, ie kilobytes. You
- should be able to use the size info to determine which partition is
- represented by which device name.
-
- 5) Mount the new disk partition and copy over the
- root filesystem to the harddisk, eg like this:
-
- cd /
- mkdir user
- mount /dev/hdaX /user
- cd /user
- for i in bin dev etc usr tmp
- do
- cp +recursive /$i /user
- done
- umount /dev/hdaX
-
- You cannot use just "cp +recursive / /user", as that will result in a
- loop.
-
- 6) Sync the filesystem after you have played around enough, and reboot.
-
- sync
- sync
- lo
-
- (none) login: sync
- <wait for it to sync>
- ctrl-alt-del
-
- THIS IS IMPORTANT! NEVER EVER FORGET TO SYNC BEFORE KILLING THE MACHINE.
-
- 7) Change the bootdisk to understand which partition it should use as a
- root filesystem. See RELNOTES.11: it's still the word at offset
- 508 into the image. You should be up and running.
-
- 8) When you've successfully started up with your harddisk as root, you
- can install auxtool.img and the other disk images (i.e. root.img ver. 0.12 )
- from a floppy, and copy over any files you find there. First use rawrite
- to copy auxtool.img over to a blank formatted diskette. Then mount
- the diskette.
-
- Mounting a floppy is easy, proceed as follows:
-
- cd /
- mkdir floppy
- mount /dev/PS0 /floppy (if you have a 3.5" drive)
-
- or
- cd /
- mkdir floppy
- mount /dev/at0 /floppy (for 5.25" floppies)
-
- After that the files can be copied to your harddisk, eg:
-
- cd /floppy
- cp compress /usr/bin
- cp uncompress /usr/bin
- cp tar /usr/bin
- cp vi /usr/bin
- sync
- sync
- sync
- umount /dev/PS0 (or /dev/at0 for 5.25" floppies)
-
-
- Now, you may follow the same technique to copy files over from the
- version 0.12 root image, if you so desire.
-
- 9) Copying tar files over to Linux: Other Linux software is usually
- distributed in one of two different ways:
-
- 1) tar format, identified by `.tar' suffix.
- 2) tar.Z format identified by `.taz' suffix.
-
- IF THE SUFFIX IS "tar":
-
- To transfer a `.tar' file over to Linux use rawrite to copy it
- to a diskette, HOWEVER after booting Linux and inserting the
- diskette holding the tar file, you DO NOT use `mount'. Why?
- Because the tar archive is not a file system as are the image
- files. You use this command to transfer tar archives from the
- diskette:
-
- tar xvf /dev/PS0 (or /dev/at0 for 5.25" floppies)
-
- IF THE SUFFIX IS "taz"
-
- To transfer a `.taz' you must perform some intermediate steps.
- One of the easiest ways is to use a version of tar that runs
- under MS-DOS and then create a temporary tar file which you can
- transfer to Linux using the previously described rawrite
- method. Suppose you wish to transfer a file named `anyfile.taz'
- to Linux. Use the DOS version of tar a follows:
-
- tar cvf temp.tar anyfile.taz
-
- Now copy temp.tar to diskette using rawrite. Once inside Linux
- unarchive it as follows:
-
- tar xvf /dev/PS0 (this will retrieve `anyfile.taz')
- mv anyfile.taz tmp.tar.Z (this renames the taz file)
- uncompress tmp.tar.Z (this uncompresses the taz file)
- tar xvf tmp.tar (this untars the original taz file)
-
- Please note that there is an MTOOLS package under development for
- Linux which will allow you to read and write to and from DOS
- directly. Watch for it.
-
-
- That's it. Now go back and read the INSTALL-0.11, until you are sure you
- know what you are doing.
-
-
- New features of 0.95, in order of appearance
- (ie in the order you see them)
-
- Init/login
-
- Yeah, thanks to poe (Peter Orbaeck (sp?)), linux now boots up like a
- real unix with a login-prompt. Login as root (no passwd), and change
- your /etc/passwd to your hearts delight (and add other logins in
- /etc/inittab etc).
-
- Bash is even bigger
-
- It's really a bummer to boot up from floppies: bash takes a long time to
- load. Bash is also now so big that I couldn't fit compress and tar onto
- the root-floppy: You'll probably want the old rootimage-0.12 just in
- order to get tar+compress onto your harddisk. If anybody has pointers
- to a simple shell that is freely distributable, it might be a good idea
- to use that for the root-diskette.
-
- Especially with a small buffer-cache, things aren't fun. Don't worry:
- linux runs much better on a harddisk.
-
- Virtual consoles on any (?) hardware.
-
- You can select one of several consoles by pressing the left alt-key and
- a function key at the same time. Linux should report the number of
- virtual consoles available upon bootup. /dev/tty0 is now "the current"
- screen, /dev/tty1 is the main console, and /dev/tty2-8 can exist
- depending on your text-mode or card.
-
- The virtual consoles also have some new screen-handling commands: they
- confirm even better to vt200 control codes than 0.11. Special graphic
- characters etc: you can well use them as terminals to VMS (although
- that's a shameful waste of resources), and the PF1-4 keys work somewhat
- in the application-key mode.
-
- Symbolic links.
-
- 0.95 now allows symlinks to point to other symlinks etc (the maximum
- depth is a rather arbitrary 5 links). 0.12 didn't like more than one
- level of indirection.
-
- Virtual memory.
-
- VM under 0.95 should be better than under 0.12: no more lockups (as far
- as I have seen), and you can now swap to the filesystem as well as to a
- special partition. There are two programs to handle this: mkswap to set
- up a swap-file/partition and swapon to start up swapping.
-
- mkswap needs either a partition or a file that already exists to make a
- swap-area. To make a swap-file, do this:
-
- # dd bs=1024 count=NN if=/dev/hda of=swapfile
- # mkswap swapfile NN
-
- The first command just makes a file that is NN blocks long (initializing
- it from /dev/hda, but that could be anything). The second command then
- writes the necessary setup-info into the file. To start swapping, write
-
- # swapon swapfile
-
- NOTE! 'dd' isn't on the rootdisk: you have to install some things onto
- the harddisk before you can get up and running.
-
- NOTE2! When linux runs totally out of virtual memory, things slow down
- dramatically. It tries to keep on running as long as it can, but at
- least it shouldn't lock up any more. ^C should work, although you might
- have to wait a while for it..
-
- Faster floppies
-
- Ok, you don't notice this much when booting up from a floppy: bash has
- grown, so it takes longer to load, and the optimizations work mostly
- with sequential accesses. When you start un-taring floppies to get the
- programs onto your harddisk, you'll notice that it's much faster now.
- That should be about the only use for floppies under a unix: nobody in
- their right mind uses floppies as filesystems.
-
- Better FS-independence
-
- Hopefully you'll never even notice this, but the filesystem has been
- partly rewritten to make it less minix-fs-specific. I haven't
- implemented all the VFS-patches I got, so it's still not ready, but it's
- getting there, slowly.
-
- And that's it, I think.
-
- Happy hacking.
-
- Linus (torvalds@kruuna.helsinki.fi)
-